package com.d3works.apps.supplychain.service;

import com.d3works.apps.stock.db.StockMove;
import com.d3works.exception.D3worksException;

public interface StockMoveServiceSupplychain {

  /**
   * For all lines in this stock move with quantity equal to 0, we empty the link to sale order
   * lines, allowing to delete non delivered sale order lines.
   *
   * @param stockMove
   */
  void detachNonDeliveredStockMoveLines(StockMove stockMove);

  void verifyProductStock(StockMove stockMove) throws D3worksException;

  public boolean isAllocatedStockMoveLineRemoved(StockMove stockMove);

  public void setDefaultInvoicedPartner(StockMove stockMove);
}
